package com.learn.core.domain.view;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

/**
 * Description
 *
 * @author zhaohongyu
 * @ClassName CompetitionTarget
 * @date 2021.06.02 10:16
 */
@TableName("competition_target")
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModel(value="CompetitionTarget对象", description="VIEW")
public class CompetitionTarget implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableField("competition_id")
    private Integer competitionId;

    @ApiModelProperty(value = "竞赛封面")
    @TableField("competition_cover")
    private String competitionCover;

    @ApiModelProperty(value = "竞赛说明")
    @TableField("competition_explain")
    private String competitionExplain;

    @TableField("competition_sort")
    private Integer competitionSort;

    @TableField("release_state")
    private String releaseState;

    @TableField("competition_state")
    private String competitionState;

    @ApiModelProperty(value = "参加次数限制")
    @TableField("competition_frequency")
    private String competitionFrequency;

    @ApiModelProperty(value = "竞赛标题")
    @TableField("competition_name")
    private String competitionName;

    @ApiModelProperty(value = "出题方式 1固定试卷 2随机试卷")
    @TableField("assign_topic")
    private String assignTopic;

    @ApiModelProperty(value = "随机几份试卷，默认为一份（固定试卷不用填）")
    @TableField("random_several")
    private Integer randomSeveral;

    @ApiModelProperty(value = "离开页面次数")
    @TableField("leave_page")
    private Integer leavePage;

    @ApiModelProperty(value = "答题开始时间")
    @TableField("timing_start_time")
    private Date timingStartTime;

    @ApiModelProperty(value = "答题结束时间")
    @TableField("timing_end_time")
    private Date timingEndTime;

    @TableField(exist = false)
    private Integer frequency;

    @TableField(exist = false)
    private String paperState;

    @TableField("release_time")
    private Date releaseTime;

    public Date getReleaseTime() {
        return releaseTime;
    }

    public void setReleaseTime(Date releaseTime) {
        this.releaseTime = releaseTime;
    }

    public String getCompetitionState() {
        return competitionState;
    }

    public void setCompetitionState(String competitionState) {
        this.competitionState = competitionState;
    }

    public Integer getCompetitionSort() {
        return competitionSort;
    }

    public void setCompetitionSort(Integer competitionSort) {
        this.competitionSort = competitionSort;
    }

    public String getReleaseState() {
        return releaseState;
    }

    public void setReleaseState(String releaseState) {
        this.releaseState = releaseState;
    }

    public String getPaperState() {
        return paperState;
    }

    public void setPaperState(String paperState) {
        this.paperState = paperState;
    }

    public Integer getFrequency() {
        return frequency;
    }

    public void setFrequency(Integer frequency) {
        this.frequency = frequency;
    }

    public Integer getCompetitionId() {
        return competitionId;
    }

    public void setCompetitionId(Integer competitionId) {
        this.competitionId = competitionId;
    }

    public String getCompetitionCover() {
        return competitionCover;
    }

    public void setCompetitionCover(String competitionCover) {
        this.competitionCover = competitionCover;
    }

    public String getCompetitionExplain() {
        return competitionExplain;
    }

    public void setCompetitionExplain(String competitionExplain) {
        this.competitionExplain = competitionExplain;
    }

    public String getCompetitionFrequency() {
        return competitionFrequency;
    }

    public void setCompetitionFrequency(String competitionFrequency) {
        this.competitionFrequency = competitionFrequency;
    }

    public String getCompetitionName() {
        return competitionName;
    }

    public void setCompetitionName(String competitionName) {
        this.competitionName = competitionName;
    }

    public String getAssignTopic() {
        return assignTopic;
    }

    public void setAssignTopic(String assignTopic) {
        this.assignTopic = assignTopic;
    }

    public Integer getRandomSeveral() {
        return randomSeveral;
    }

    public void setRandomSeveral(Integer randomSeveral) {
        this.randomSeveral = randomSeveral;
    }

    public Integer getLeavePage() {
        return leavePage;
    }

    public void setLeavePage(Integer leavePage) {
        this.leavePage = leavePage;
    }

    public Date getTimingStartTime() {
        return timingStartTime;
    }

    public void setTimingStartTime(Date timingStartTime) {
        this.timingStartTime = timingStartTime;
    }

    public Date getTimingEndTime() {
        return timingEndTime;
    }

    public void setTimingEndTime(Date timingEndTime) {
        this.timingEndTime = timingEndTime;
    }
}
